NOVELL TECHNICAL INFORMATION DOCUMENT TITLE: Xtrieve 4.11 for NetWare SQL Patch E DOCUMENT ID: TID000455 DOCUMENT REVISION: B DATE: 18NOV93 ALERT STATUS: Yellow INFORMATION TYPE: Issue README FOR: XTRNWS.EXE NOVELL PRODUCT and VERSION: Xtrieve PLUS 4.1x ABSTRACT: XTRNWS.EXE contains patch release E for the Xtrieve PLUS 4.11 component of NetWare SQL 3.0. This NetWare SQL 3.0 patch set consists of two zipped files: SQL30.EXE (NetWare SQL) and XTRNWS.EXE (Xtrieve PLUS). ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DISCLAIMER THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL. NOVELL MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY THIS INFORMATION. HOWEVER, THE INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY. NOVELL MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ SYMPTOM See the Patch Set Descriptions and Workarounds information in the Solution Specific portion of this document. SOLUTION NOTE: If you update Xtrieve PLUS, be sure to update NetWare Btrieve* and NetWare SQL, also. *NetWare Btrieve 6.10b is current for this November 1993 patch release of Xtrieve PLUS. For information about the latest Btrieve release, refer to the README.BTR file included with the Btrieve 6.x upgrade package (located on CompuServe, NetWire Forum, NOVLIB, LIB7, in the file BTR61.EXE). That README file provides installation and upgrade information for NetWare Btrieve and descriptions of the current NetWare Btrieve 6.x program files. Note that the README.BTR file for the current update release of NetWare Btrieve 6.x replaces all previous NetWare Btrieve patch and general release README files. Self-Extracting File Name: XTRNWS.EXE Revision: B Files Included Size Date Time Version \ XTRNWS.TXT (This File) XTRDOS.411 104112 11-12-93 3:40p 4.11e MAKE_XTA.DOS 68800 10-28-93 3:00p 4.11c XCFP.DOS 32320 10-26-93 10:08a 4.11c XTRIEVE.MSG 39077 10-07-93 5:00p XTROS2.411 86687 11-12-93 3:48p 4.11e MAKE_XTA.OS2 74898 10-28-93 3:48p 4.11c XCFP.OS2 40962 10-26-93 10:08a 4.11c PATCH.EXE 76981 01-30-92 5:00a PATCH30.BAT 4351 09-02-92 2:40p XMENU.DOS 98960 12-03-92 3:40p 4.11b XMENU.OS2 133608 12-04-92 4:48p 4.11b XTRIEVE.MEN 13347 10-07-93 5:00p Installation Instructions: The PATCH30.BAT and PATCH.EXE files discussed in this procedure require DOS 2.1 or later or OS/2 1.1 or later. The XTRNWS.EXE file contains the following: File Description þXTRNWS.TXT This Readme document þPATCH.EXE A utility Novell provides for installing product patches. þPATCH30.BAT A batch file to facilitate patch installation. þXTRDOS.411 Xtrieve PLUS patch files XTROS2.411 þReplacement files Files with the same names as the files they will replace. To update Xtrieve PLUS 4.11, complete the following steps: 1. Create a directory on your system, and copy the XTRNWS.EXE file to that directory. 2. Use the utility PKUNZIP.EXE to unzip the zipped files. 3. Install the Xtrieve PLUS patch files as follows: a. Refer to the list of patch files in the section of this Readme file entitled "Original File Information," find the original files on your system, and ensure that your original files match those listed. NOTE: This patch is cumulative; it contains all previous patches to Xtrieve PLUS 4.11 for NetWare SQL. Consequently, if you installed a previous patch, you should restore the original files from NetWare SQL 3.0 by reinstalling them from the installation diskettes, or by renaming the XTRIEVE.ORG file (created during the previous patch installation) to XTRIEVE.EXE. b. Use the DOS COPY command to copy the original files into the directory that contains the unzipped patch files from XTRNWS.EXE. c. Enter the command PATCH30 XTRDOS to patch Xtrieve PLUS for DOS or the command PATCH30 XTROS2 to patch Xtrieve PLUS for OS/2. PATCH30 verifies that you are patching the original released version of the software, applies the patch, and gives the original file an .ORG extension. d. Use the DOS COPY command to copy the patched file back to the original file's directory. 4. Install the replacement files as follows: a. Find the directory that contains the original files to be replaced. b. Before copying the replacement files, back up the original files to a diskette or to another directory. c. Use the DOS COPY command to replace the original files with the new files. d. If you replaced MAKE_XTA.EXE, XCFP.EXE, or XMENU.EXE, rename the replacement file's extension from .DOS or .OS2 to .EXE. 5. After applying the patches, you can remove the directory you created to store the XTRNWS.EXE file. You may also want to verify the version numbers when you load each program. The version numbers should match those listed in the next section, "Patch File Information." ============================================================ Original File Information ========================= To ensure you are patching the original files, compare the files to be patched with those in the following list. This list shows the byte size and the date and time stamps for the original release. Patch these files: (DOS version) XTRIEVE EXE 4.11 460544 5-11-92 9:59a (OS/2 version) XTRIEVE EXE 4.11 464120 5-11-92 11:06a Replace these files: (DOS version) MAKE_XTA DOS 4.11 65840 5-11-92 9:59a (OS/2 version) MAKE_XTA OS2 4.11 71754 5-11-92 11:09a (DOS version) XCFP DOS 4.11 44080 5-11-92 10:02a (OS/2 version) XCFP OS2 4.11 57010 5-11-92 11:16a (OS/2 version) XMENU EXE 4.11 133596 5-11-92 11:13a (DOS version) XMENU EXE 4.11 98960 4-30-92 5:08p (both versions) XTRIEVE MSG 39017 4-29-92 3:12p (both versions) XTRIEVE MEN 13347 4-29-92 3:12p Solution Specifics: ============================================================ Contents ======== Patch Set Descriptions September 1992 Patches December 1992 Patches March 1993 Patches November 1993 Patches Documentation Updates September 1992 Updates ============================================================ Patch Set Descriptions ====================== This section describes each patch in the patch set. The patch descriptions are grouped by release date. Within each release group, the patch descriptions for the Xtrieve PLUS engine appear first, followed by those for the utilities. For each patch, the description includes one or more search strings. These search strings indicate areas in which you may encounter the problem that the patch addresses. The search strings may help you quickly determine whether the patch you need for a specific problem is included in this patch set. NOTE: In some cases, the text describes a problem or reported bug that the update does NOT fix. In those cases, use the workaround provided. September 1992 Patches ---------------------- The following information describes patches released in September 1992. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DATE, MASK, SDF, TRANSLATE, YEAR Problem Fixed by This Patch: When translating to Standard Data Format (SDF), Xtrieve PLUS translates date fields with a mask of mm/dd/yyyy as mm/dd/yy. When translating four-digit year masks from SDF, Xtrieve PLUS repeats the first two digits of the year. (For example, it translates 1992 as 1919.) This patch ensures that Xtrieve PLUS properly translates date fields to and from of SDF. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: LOGICAL, MASK, SDF, TRANSLATE, Y-N Problem Fixed by This Patch: When Xtrieve PLUS translates a logical type field with a mask of y-n to SDF, it translates all values as n. This patch ensures that Xtrieve PLUS properly translates the data. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: PRINT, REPORT, DIVIDE OVERFLOW Problem Fixed by This Patch: When you attempt to print a report to either a file or a printer, Xtrieve PLUS returns the message "Divide Overflow." This patch allows you to print a report to a file or a printer. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 249, 250, RECALL, VIEW, STORE Problem Fixed by This Patch: When the VIEW.DDF file stores more than 249 views and you attempt to recall a view, Xtrieve PLUS returns the message "No views stored in Dictionary." This patch ensures that Xtrieve PLUS can recall views when the VIEW.DDF file stores more than 249 views. However, if you have set the /D option of the NetWare SQL Requester too low, Xtrieve PLUS may not display the 250th view. To see more than 249 views, increase the setting of the /D option for the NetWare SQL Requester. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 1-2-3, LOTUS, REPORT, TIME, TRANSLATE Problem Fixed by This Patch: Xtrieve PLUS does not translate fields of data type time from reports to Lotus 1-2-3 worksheets. This patch ensures that Xtrieve PLUS can properly translate reports containing time fields to Lotus 1-2-3. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: FIELD NAME, JOIN Problem Fixed by This Patch: This patch ensures that Xtrieve PLUS properly joins files that contain identical field names. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 81, BROWSE, EDIT, HANG, LOCK UP, MODIFY Problem Fixed by This Patch: When you return to Browse mode from EDIT/Modify mode, Xtrieve PLUS does not release the multiple-record locks; consequently, Xtrieve PLUS returns Status Code 81 (Lock Error) the next time you attempt to switch to EDIT/Modify mode. This patch ensures that Xtrieve PLUS releases multiple-record locks when you return to Browse mode from EDIT/Modify mode. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: GLOBAL, OUT OF LOCAL HEAP SPACE, RIGHTS, SECURITY, USER Problem Fixed by This Patch: When you add a user with global rights only, show that user's rights, press Esc, and then press F7 to record a command file, Xtrieve PLUS returns the message "Out of Local Heap Space in Xtrieve." This patch ensures you can perform this operation without receiving an error. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: BROWSE, EDIT, FORM, OFFSET, REMOVE Problem Fixed by This Patch: Xtrieve PLUS does not correctly format data when you use the EDIT/Remove option following a FORM/Browse operation. This patch ensures that Xtrieve PLUS displays data at the correct offset. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 99/, ADD, EDIT, INTEGER, MASK, RANGE Problem Fixed by This Patch: If you use the EDIT/Add option to enter data into an integer field with the mask 99/ and a range of '1'..'12', Xtrieve PLUS does not accept any entry in that field. This patch ensures that Xtrieve PLUS allows you to enter data in this situation. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: HANG, LOCK UP, MENU, OPERATOR, RESTRICTION, USER-DEFINED Problem Fixed by This Patch: Xtrieve PLUS locks up your workstation if you attempt to use a user-defined menu containing restriction operators that are longer than those supplied with Xtrieve PLUS. This patch ensures that you can use such a menu. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: CONDITIONAL, HANG, LOCK UP, JOIN, USER-DEFINED FIELD Problem Fixed by This Patch: If you create a nested, conditional, user-defined field in a joined view, your computer locks up. This patch ensures that Xtrieve PLUS returns the error message "Out of Local Heap Space in Xtrieve" instead of locking up your computer. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 51, ENCRYPT, INVALID OWNER, OWNER NAME, SUPPLEMENTAL Problem Fixed by This Patch: If you add a supplemental index to an encrypted Btrieve file that requires an owner name for any access (ENCRYPT/Any), Xtrieve PLUS returns Status Code 51 (Invalid Owner). This patch ensures you can perform this operation without receiving Status Code 51. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: CENTER, JUSTIFY, RIGHT Problem Fixed by This Patch: This patch ensures that you can right justify a field after you have centered justified it. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: ERROR WRITING OUTPUT, SDF, TRANSLATE, USER-DEFINED, ZSTRING Problem Fixed by This Patch: Xtrieve PLUS returns the message "Error Writing Output" when you attempt to translate a user-defined field of type zstring (using Left Chars or Right Chars function) to SDF. This patch ensures that Xtrieve PLUS properly translates zstring fields to SDF. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: PROTECTION VIOLATION, XTROWNER Problem: In Xtrieve PLUS for OS/2, if you attempt to open a file that requires an owner name before setting the XTROWNER environment variable, OS/2 returns a Protection Violation message and ends your Xtrieve PLUS session. Workaround: Set the XTROWNER environment variable before you attempt to open a file that requires an owner name. * * * * * * * * * ProductPlatform: NetWare SQL - XMENU.EXE, 4.11 Search Strings: MENU, XMENU, XTRIEVE.MEN Problem Fixed by This Patch: If you attempt to open XTRIEVE.MEN, the XMENU utility returns the message, "'XTRIEVE.MEN' File Is Not a Compatible Menu File for Xtrieve." This update ensures that XMENU recognizes XTRIEVE.MEN as a compatible menu file. * * * * * * * * * December 1992 Patches --------------------- The following information describes patches released in December 1992. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DISPLAY ERRORS Problem: In the Report Layout screen, when you insert a field between two fields that take up a relatively large portion of the screen, Xtrieve PLUS redraws the screen incorrectly. However, Xtrieve PLUS accurately stores the new data. (This patch set does not contain a fix for the problem.) * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: F8, HANG, MODIFYING, REPORT LAYOUT Problem Fixed by This Patch: When you repeatedly use the key sequence Shift+F8, F8, and Esc when modifying or viewing groups or fields in a report layout, Xtrieve PLUS terminates. This patch ensures that Xtrieve PLUS properly closes and reopens the report layout windows, thus preventing Xtrieve PLUS from terminating. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: GROUP FIELD, GROUP SUMMARY, REPORT FIELD, REPORT SUMMARY Problem Fixed by This Patch: If you use a report field in a report field summary or a group field in a group field summary, Xtrieve PLUS does not allow you to remove or modify the field. This patch ensures that Xtrieve PLUS allows you to remove or modify such fields. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: FORM/ADD EDIT SCREEN, INVALID RECORD Problem Fixed by This Patch: If you attempt to add an invalid record using the Form/Add edit screen, Xtrieve PLUS exits the Form/Add edit screen and returns to the Form menu. This patch ensures that if an error occurs when you attempt to add a record, Xtrieve PLUS remains at the edit screen. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: CHANGE CURRENT USER PASSWORD, NUMERICSTS Problem Fixed by This Patch: When you define or reorganize a file that contains a field of type numericsts, Xtrieve PLUS displays the following incorrect message at the bottom of the screen: Change current user password This patch ensures that Xtrieve PLUS displays the correct message, as follows: ASCII digits, leading zero digits, trailing sign byte (2 to 15 bytes) * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: REPORT LAYOUT Problem Fixed by This Patch: When the Requesters for NetWare SQL and NetWare Btrieve are loaded by Xtrieve PLUS, report layouts may become corrupt in memory after you print a report. This patch ensures that Xtrieve PLUS correctly maintains report layouts. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: REMOVE GROUP Problem Fixed by This Patch: If you remove a group from a report and then attempt to remove another group, Xtrieve PLUS displays a repetitive list of groups from which to choose. In addition, if you choose one of the listed groups, Xtrieve PLUS causes the workstation to freeze. This patch ensures that Xtrieve PLUS correctly displays lists of groups. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: BLANKS, IMPORT DATA, SDF Problem Fixed by This Patch: Xtrieve PLUS incorrectly imports data in Standard Data Format (SDF) if blanks separate the data elements, as in the following example: "Firstname", "Middlename", "Lastname" This patch ensures that Xtrieve PLUS correctly imports SDF data. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: LVAR, NOTE, TRANSLATE, VARIABLE-LENGTH FIELDS Problem Fixed by This Patch: Xtrieve PLUS does not correctly process view-to-view translations on variable-length fields that are not of the same type. For example, you cannot accurately translate a note field into an lvar field. This patch ensures that Xtrieve PLUS correctly performs such translations. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: CREATE FILE, PAGE, PREALLOCATION Problem Fixed by This Patch: When you are creating files, Xtrieve PLUS allows you to preallocate no more than 32,767 pages. This patch ensures that Xtrieve PLUS allows you to preallocate up to 65,535 pages. * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: CONDITIONAL, FIELD LIST, SCALAR FUNCTIONS, USER-DEFINED FIELDS Problem: Xtrieve PLUS may not display all available fields in a field list when you are defining a user-defined field that includes nested conditions or nested scalar functions, as in the following example expression: Result = SUBSTRING( SUBSTRING( SUBSTRING( Field3,5,20),2,Field2),5,Field1) Workaround: For each level of nesting, create a temporary, user-defined field, as in the following example: TempField1 = SUBSTRING( Field3,5,20) TempField2 = SUBSTRING( TempField1,2,Field2) TempField3 = SUBSTRING( TempField2,5,Field1) Since Xtrieve PLUS embeds the temporary field definitions in the substring field that references it, you can delete the interim temporary fields, resulting in a single, user-defined field, as in the following example: Result = TempField3 * * * * * * * * * ProductPlatform: a\NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DECIMAL POINTS, INTEGER FIELDS, MASKS Problem: If you place a mask that contains decimal points (such as ZZZ,ZZ9.99) on an integer field, you may get unexpected results in report summary fields. For example, if the field's data is 38,470.00, the masked result is 384.70. Workaround: Masks on integer fields should not contain decimal points. Use a more appropriate data type, such as decimal, float, money, or numeric. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.PDB Search Strings: PRINTER, TABLOID SETTING Problem: The Tabloid setting of the XTRIEVE.PDB file specifies the Epson LQ-1500/2.0 printer instead of the IBM PC graphics printer. Workaround: Change the Tabloid setting as follows. 1. At a DOS workstation, enter SLATE XTRIEVE.PDB. 2. In the SLATE utility, follow these steps to set the Tabloid setting: a. Select the Add/Edit Devices (Ptr Connections) option from the main menu. b. Select the 3001 Tabloid option from the Devices menu. c. Use the Tab key to move to the Ptr Mfg field and press F9 to display a list of printer manufacturers. d. Select IBM. e. Use the Tab key to move to the Ptr Type field and press F9 to display a list of printer types. f. Select PC Graphics Printer. 3. To exit SLATE, press F10 three times. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: 3, HANG, OPEN VIEWS Problem Fixed by This Patch: The MAKE_XTA utility hangs or returns Status Code 3 (File Not Open) when you attempt to open certain views. This patch ensures that MAKE_XTA can open such views. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: FIELD NAMES, LOWERCASE, UPPERCASE Problem Fixed by This Patch: The MAKE_XTA utility converts all letters in user-defined field names to uppercase. This patch ensures that MAKE_XTA preserves lowercase letters in field names. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: EQJOIN, EQUAL, JOIN, KEYWORD, NULL, NULLJOIN Problem Fixed by This Patch: The MAKE_XTA utility inserts incorrect keywords in .XTA files that contain file joins. For example, MAKE_XTA uses the keyword EQUAL when it should use the keyword EQJOIN. This patch ensures that MAKE_XTA inserts the correct keywords. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: ADD KEYWORD, REPORT LAYOUT, SUM Problem Fixed by This Patch: If a report layout contains the calculation type SUM, the MAKE_XTA utility inserts an extra .ADD. keyword in the .XTA file. This patch ensures that MAKE_XTA inserts the correct number of .ADD. keywords. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: ADJACENT FIELDS, BIT FIELDS Problem Fixed by This Patch: If a dictionary contains two or more adjacent fields of type bit, the MAKE_XTA utility inserts only the first bit field in the .XTA file. This patch ensures that MAKE_XTA inserts all bit fields. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: AUTOINC, INDEX ATTRIBUTES Problem Fixed by This Patch: The MAKE_XTA utility incorrectly extracts the index attributes of fields of type autoinc. This patch ensures that MAKE_XTA retains index attributes as defined in the original file. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: EXTRACT FILES, SUPPLEMENTAL INDEX Problem Fixed by This Patch: The MAKE_XTA utility fails when attempting to extract files that contain supplemental indexes. This patch ensures that MAKE_XTA correctly extracts supplemental indexes. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: DESCRIPTIVE FILENAME Problem Fixed by This Patch: If a descriptive filename is shorter than the actual filename, the MAKE_XTA utility pads the rest of the descriptive filename with characters from the actual filename. For example, given a descriptive filename of FILE and an actual filename of TESTING, MAKE_XTA converts the descriptive filename to FILEING. This patch ensures that MAKE_XTA inserts the correct descriptive filename into the generated .XTA file. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: EXTRACT VIEWS, USER-DEFINED FIELDS Problem Fixed by This Patch: The MAKE_XTA utility incorrectly extracts views containing relatively large user-defined fields. This patch ensures that MAKE_XTA correctly extracts such views. * * * * * * * * * ProductPlatform: NetWare SQL - XCFP.EXE, 4.11 Search Strings: COMMANDS WITH NUMERALS, PAGE SIZE Problem Fixed by This Patch: The Xtrieve PLUS Command File Processor (XCFP) utility does not recognize the command that specifies page size since the command begins with a numeral. This patch ensures that XCFP recognizes commands that begin with numerals. * * * * * * * * * March 1993 Patches ------------------ The following information describes patches released in March 1993. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: MAXIMUM NUMBER OF VIEWS (819), MEMORY ERROR, /V STARTUP OPTION Problem Fixed by This Patch: Xtrieve PLUS returns a memory error on View Release and/or Retain operations when you specify more than 819 views. This patch ensures that when you specify more than 819 views for the /V startup option (for example, /V:850), you receive the following message: Xtrieve: Invalid view parameter * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: INVALID COMMAND-LINE PARAMETER, TEMPORARY FILES, XTRTMP_M.* FILE Problem Fixed by This Patch: When you supply Xtrieve PLUS with an invalid command-line parameter, the program removes all temporary files except the XTRTMP_M.* file. This patch ensures that Xtrieve PLUS correctly deletes all temporary files. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: BFLOAT DATA TYPE, RESTRICTION Problem Fixed by This Patch: Since Xtrieve PLUS 4.11b does not insert a bfloat data type correctly, any restriction based on a bfloat data type returns invalid results. This patch ensures that Xtrieve PLUS recognizes the version of the program that you are using and correctly adapts the input value to work in that environment. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: EXITING XTRIEVE, SUSPENDED COMMAND FILE Problem Fixed by This Patch: When you use a CTRL+Break key sequence while an Xtrieve PLUS command file is suspended, Xtrieve PLUS causes you to exit from the program. This patch ensures that Xtrieve PLUS stops the command file execution rather than exiting from the program. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 2101, /D OPTION, DATA DICTIONARY, DICTIONARY SHOW, NSREQ Problem Fixed by This Patch: When you use the NetWare SQL Requester (NSREQ.EXE or NSREQS.EXE) to access dictionaries through Xtrieve PLUS and the Dictionary Show command does not display any dictionaries, restart the Requester and specify a larger length for the data message with the /D option (Date Message Length). The Show Dictionary command then displays a list of all available dictionaries. This patch ensures that the NetWare SQL Requester displays Status Code 2101 (Data Message Buffer Is Too Small) when a request to read Xtrieve data, such as a list of dictionaries, fails. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 248, BLANKS, CHARACTER FIELD/LIST, INSERT Problem Fixed by This Patch: When you press Enter on a character field in an insert screen for which you have defined a character list and no data is shown, Xtrieve PLUS returns Status Code 248 (Invalid Size for Data Type) even if blanks are permitted in that field. This patch ensures that Xtrieve PLUS handles such character fields correctly. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: BRACKETED CONDITIONAL FIELD, CONSTANT, USER-DEFINED FIELD Problem Fixed by This Patch: The MAKE_XTA utility does not properly convert constants when extracting a view containing a user-defined field that includes a bracketed conditional field. This patch ensures that MAKE_XTA handles such user-defined fields correctly. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: COMMAND FILE, DEFINED VIEW, JUSTIFICATION, XCFP Problem Fixed by This Patch: When you use the MAKE_XTA utility to extract a defined view and then use the Xtrieve Command File Processor (XCFP) to make that view into a command file, Xtrieve drops the left/right/center justification. This patch ensure that the MAKE_XTA utility places the correct justification information in the .XTA file. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: FIELD, FLOATING POINT VALUES, MASKABLE DATA TYPE, UNFORMATTING DATA Problem Fixed by This Patch: The MAKE_XTA utility is not handling maskable data type fields correctly, causing an invalid mask when unformatting data. In addition, the utility is not translataing floating point values correctly. This patch ensures that the MAKE_XTA utility handles both maskable data type fields and floating point values correctly. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: HEWLETT PACKARD LASERJET PRINTER, VARIABLE-WIDTH FONTS Additional Printer Information: Variable-width fonts for the Hewlett Packard series of Laserjet printers do not work correctly with Xtrieve PLUS. * * * * * * * * * November 1993 Patches --------------------- The following information describes patches released in November 1993. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DEFINE, MESSAGE, NUMSTS, REORGANIZE, SIZE, TYPE Problem Fixed by This Patch: When you are defining or reorganizing a file that contains a NumericSTS field, Xtrieve displays the message "Change current user password" when you attempt to work on the Size or Type portion of a table or field definition. This patch ensures that Xtrieve displays the correct message when you define a NumericSTS field. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: GROUP, HANG, REMOVE, SUMMARIES Problem Fixed by This Patch: Xtrieve does not successfully remove a report group that contains a group summary. This occurs when you use GROUP/REMOVE from the Report menu to remove from a table a group containing other groups that themselves contain group summaries. When you again choose GROUP/REMOVE, Xtrieve displays the remaining group names multiple times in the list of groups. If you then try to remove any of the remaining groups, the computer hangs. This patch ensures that Xtrieve handles this type of operation correctly. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: HANG, PRINT, REPORT Problem Fixed by This Patch: When you attempt to print a report that contains groups, the printer occasionally hangs after printing the first page. This problem occurs, however, only when you position the groups so that subsequent groups print on the same line as the first group. In that case, Xtrieve tracks the current line and column positions inaccurately, attempts to place too much information on a page, overwrites memory, and causes the workstation to hang. This patch ensures that Xtrieve properly tracks current line and column positions. NOTE: If a group contains any fields, do not define group control fields with a line position of +0. In most cases, this operation does not produce the intended printed results. Instead, define the group with a line position of +1, which places each occurence of the fields in the group on a new line. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: EMPTY FIELD, NOTE, SDF, TRANSLATE Problem Fixed by This Patch: When translating a view including a NOTE or LVAR field that contains no data into SDF format, Xtrieve produces a field value of (HEX) 0xF9 in double quotation marks. This patch ensures that Xtrieve translates the value as "" with no data included between the quotes. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 221, USER-DEFINED FIELD Problem Fixed by This Patch: Xtrieve returns a Status Code 221 (Invalid Syntax for Expression or Restriction) when building an expression for a user-defined field. This patch ensures that Xtrieve always zero-terminates a user-defined field expression before sending that expression to NetWare SQL for processing. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: LOADING WITH /? OR /H, XTRTMP_*.*, ZERO BYTES Problem Fixed by This Patch: When you load Xtrieve with the /?, or /h parameters, it leaves XTRTMP_M.* and XTRTMP_L.* files with zero bytes in the XTRTMP directory. This patch ensures that Xtrieve always removes XTRTMP_*.* files when it terminates. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: F1, HEAP SPACE, HELP Problem Fixed by This Patch: Xtrive occasionally returns the message "Out of local heap space" when you press F1 for help. This patch ensures that Xtrieve always reserves enough space in memory for the help text. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: EXTRA 0, FLOAT, MASK Problem Fixed by This Patch: Xtrieve adds an extra zero following the decimal point to float values when the display mask for those values contains the special () literals. This patch ensures that these special literals do not affect the number of digits following the decimal point. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: BORDER COLOR, CONFIGURE, USE BIOS SWITCH Problem Fixed by This Patch: When you change the color of the border to a color other than black (the default), Xtrieve does not reset the color to black when it exits. This patch ensures that the border color is reset to black when Xtrieve exits, provided that the Use BIOS switch is turned off. Note that this patch applies only to the DOS version of Xtrieve PLUS for NetWare SQL. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: EXTRA BLANK PAGE, PRINT DEFINITION Problem Fixed by This Patch: When you print a definition (view, report, or dictionary table), Xtrieve prints an extra blank page before printing the actual definition. This patch ensures that the first printed page is the first page of the definition. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: CONDITIONAL, USER-DEFINED FIELD Problem Fixed by This Patch: Xtrieve does not properly define a user-defined field if its definition is based on a conditional statement and other user-defined fields. The problem occurs when you include in the definition a condition that compares two user-defined fields. This patch ensures that Xtrieve includes the correct fields in a conditional user-defined field and correctly defines the entire field. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DEFINITION, PRINT, VIEW Problem Fixed by This Patch: When printing a large view definition, such as one with many joined files, Xtrieve displays the following error message: "Error writing output." This patch ensures that Xtrieve allocates a buffer large enough to handle multiple joined file views so that you can print the definition of such a view. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DICTIONARY, INDEX, PRINT, SHOW Problem Fixed by This Patch: If you drop an index from a table definition and do not renumber the remaining indexes, Xtrieve does not display the definitions for indexes with a number higher than the one that was dropped. This patch ensures that Xtrieve correctly finds all index definitions when showing or printing a table definition. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: COMPLETE, RESTRICT, VARIABLE FIELD Problem Fixed by This Patch: In some cases, you cannot complete a restriction when that restriction includes a variable length field because Xtrieve occasionally overwrites memory in this situation. This patch ensures that no memory overwrite occurs, enabling you to complete the restriction. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DICTIONARY, TABLE DEFINITION, VOLUME NAME Problem Fixed by This Patch: Xtrieve does not allow you to include a volume name in the path to the Btrieve data file for a table definition. This patch ensures that you can enter any of the following for the location for a table definition: \\server\vol:directory\file vol:directory\file drive:directory\file directory\file file * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 213, OWNER NAME, VIEW Problem Fixed by This Patch: Xtrieve displays Status Code 213 (Read Access) when the XTROWNER variable does not contain each owner name required to recall a view definition. This patch ensures that Xtrieve requests the owner names when recalling a view just as it does when opening a table for a view. The only difference is that Xtrieve asks for an owner name each time after you press until you press , or until you press if you have not typed a name at the prompt. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: /D PARAMETER, /K PARAMETER, COMMAND FILE, KEYBOARD FILE, LOADING XTRIEVE Problem Fixed by This Patch: Xtrieve does not load successfully when you specify a keyboard input file along with the /D parameter. This patch ensures that you can load Xtrieve when you specify the /D parameter and a keyboard input file, provided that you also specify either the /K parameter or a command file. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: DATE FIELD, DIF FILE, LOTUS 123 Problem Fixed by This Patch: When Xtrieve translates a date field into a DIF file format and you then load the DIF file into Lotus 123, the date value appears as ******. (This problem occurs only when Xtrieve is loaded and you are using XQLP 2.x.) This patch ensures that Xtrieve correctly translates the date values to the DIF file format. * * * * * * * * * ProductPlatform: NetWare SQL - XTRIEVE.EXE, 4.11 Search Strings: 227, USER-DEFINED FIELD Problem Fixed by This Patch: When the menu for a user-defined field definition is full and cannot hold any additional entries, Xtrive displays Status Code 227 (Operand Must Be a Dictionary Field) when completing the definition. This patch ensures that Xtrieve correctly tracks the table name for a field when the menu is full and then builds the definition correctly. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: COMMAND FILE NOT REPLAYABLE, REPORT LAYOUT DEFINITION, XCFP Problem Fixed by This Patch: When MAKE_XTA extracts a report layout definition and XCFP converts that .XTA file to an .XTC file, Xtrieve returns the error message "Command file contains keystroke which is not replayable," and the command file does not complete. This patch modifies the way in which MAKE_XTA builds .XTA files for report layouts so that the command file contains valid keystrokes and builds the correct report. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: APPEND, BRACKET COMMAND, CONCATENATE, USER-DEFINED STRING FIELD Problem Fixed by This Patch: When converting a user-defined field into an .XTA file, MAKE_XTA adds a .BRACKET. command when it attempts to append one string to another string or to concatenate two strings. This patch ensures that MAKE_XTA does not insert a .BRACKET. command when converting a user-defined string field. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: FIELD HEADINGS AND OFFSETS, VIEWS Problem Fixed by This Patch: When MAKE_XTA converts a view, it occasionally uses the field names, rather than the user-specified headings, for the fields in the view. Also, MAKE_XTA does not insert the correct field offset. This patch ensures that MNAKE_XTA employs the user-specified field heading for all fields and inserts the correct field offset. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: MULTIPLE FIELD NAMES, TABLE NAMES, VIEWS Problem Fixed by This Patch: When MAKE_XTA converts a view, it does not select the correct occurrence of a field when the field name appears more than once in the view. (This occurs because MAKE_XTA does not accurately determining the correct table name for the field.) This patch ensures that when you are rebuilding a view definition, MAKE_XTA determines the correct table name whenever you select a field name from a menu. * * * * * * * * * ProductPlatform: NetWare SQL - MAKE_XTA.EXE, 4.11 Search Strings: COMMAND FILE, ESC COMMANDS, FOOTER, HEADER Problem Fixed by This Patch: When a report contains a header or footer, MAKE_XTA does not place the correct number of .ESC. commands in the command file. As a result, the command file does not replay correctly in Xtrieve. This patch ensures that MAKE_XTA places the correct number of .ESC. commands in the command file for report headers and footers. * * * * * * * * * ProductPlatform: NetWare SQL - XCFP.EXE, 4.11 Search Strings: COMMAND FILE, FMENU COMMAND, XTA TO XTC CONVERSION Problem Fixed by This Patch: When XCFP converts an .XTA file containing an .FMENU. command to an .XTC file, XCFP does not place the commands in the command file. This patch ensures that XCFP correctly interprets an .FMENU. command and includes it correctly in the .XTC file. * * * * * * * * * ============================================================ Documentation Updates ===================== NOTE: The documentation updates that follow supplement any documentation updates noted in the Readme file of the original product. Note that only the September 1992 patch release included such updates. September 1992 Updates ---------------------- Xtrieve PLUS User's Manual for NetWare SQL þPage 1-11 Add the following note before the last paragraph of the "Using Xtrieve PLUS with the NetWare SQL and NetWare Btrieve Requesters" section: The null file handles that are created when Xtrieve PLUS automatically loads the Btrieve and NetWare SQL requesters are not released when you quit Xtrieve PLUS. Depending on how high you set the FILES variable in your CONFIG.SYS file, there may not be any DOS file handles available when you attempt to start another application. If this condition occurs, you must restart your computer before you can run the application. þPage 1-16 In Table 1-3, the first paragraph of the description of the /W option should read as follows: Specifies the maximum view width (in bytes) that Xtrieve PLUS allows. The view width is determined by combining the length of each field in the view. However, if a field's heading is longer than the field itself, use the length of the heading in your calculation. You can specify from 4 to 8,192 bytes. For example, the following option specification allows a view width of up to 256 bytes: /W:256 If you do not specify this option, Xtrieve PLUS uses a default value of 1,024 bytes. þPage 3-15 In Table 3-1, the description of a Null join should read as follows: Include all records from the primary file even if they have no matching records in the secondary file. þPage 4-13 In the second paragraph, the last sentence (which begins "If you press Shift+F8...") should read as follows: If you press Shift+F8 while the Report Layout screen is displayed in Prompt mode, you can see the line type for each line (header, detail, footer) in the left margin, as Figure 4-6 shows. þPage 10-5 Replace the first sentence after Table 10-1 with the following: Xtrieve PLUS supports landscape printing. Refer to the section "Defining Printer Devices" on page 10-7 for information about creating a device that allows you to print in landscape mode. þPage 10-8 Add the following note after Step 6: Some printer manufacturers list a separate printer type for landscape printing. For those printer types, the printer database displays LS as part of the type name. Ensure that you choose the landscape printer type, where appropriate. þPage 10-8 Add the following note after Step 8: If you are defining a device that allows you to print in landscape mode, modify the settings under Paper Setup as follows: Paper Length: 8.50 in Paper Width: 11.00 in Under Defaults, set the top and bottom margins to a minimum of .10 inches, and set the left and right margins to a minimum of .25 inches. þPage 10-25 Replace the description of the Display Width parameter in Table 10-4 with the following: Defines the maximum record width used in a view. The default is 1,024. The maximum width is 8,192. Status Codes and Messages Manual for NetWare SQL þPage 1-27 Add the following message and description: Insufficient Memory in Relational Manager to Show All Fields Xtrieve PLUS returns this message when there is not enough memory allocated to the data message buffer to hold the field definitions you have specified. To allocate more memory, increase the value of the /D parameter for the NetWare SQL Requester. You may also have to increase the value specified for the maximum message length in your NetWare SQL NLM configuration. For more information about these settings, see Chapter 2, "Installing and Configuring NetWare SQL," in the "Installation and Operation" manual for NetWare SQL. þPage 1-27 Add the following message and description: Insufficient Memory in Xtrieve to Show All Fields Xtrieve PLUS returns this message when there is not enough memory available to hold the field definitions you have specified. To make more memory available, unload any TSRs that are not in use. Alternatively, if your workstation has expanded or extended memory, you can use your memory management program to move TSRs or applications to high memory. þPage 1-49 The error message "There Are No Views Stored in This Directory" should read "There Are No Views Stored in This Dictionary." Add the following note after the description of the error message: Xtrieve PLUS returns this error message if you attempt to recall a view and the value for the NetWare SQL Requester startup option /D is too low. The appropriate status code in this situation is 2101 (Data Message Buffer Is Too Small). For information about Status Code 2101, refer to page 2-67 of this manual. ============================================================ Novell, Inc. has attempted to supply trademark information about company names, products, and services mentioned in this file. The following list of trademarks was derived from various sources. NetWare, Novell, Btrieve, and XQL are registered trademarks of Novell, Inc. NetWare Btrieve, NetWare Loadable Module, NetWare SQL, NLM, and Xtrieve PLUS are trademarks of Novell, Inc. NetWire is a registered service mark of Novell, Inc. 1-2-3 and Lotus are registered trademarks of Lotus Development Corporation. CompuServe is a registered trademark of CompuServe, Incorporated. Microsoft and MS-DOS are registered trademarks of Microsoft Corporation. OS/2 is a registered trademark of International Business Machines Corporation. ÿ